/**
 * 工时统计相关类型定义
 */

export interface ProjectWorkloadSummary {
  projectId: string;
  projectName: string;
  projectIdentifier: string;
  totalHours: number;
  memberCount: number;
  workDays: number;
  avgDailyHours: number;
  startDate: string;
  endDate: string;
  workloadTypes: string[];
  memberStats: MemberWorkloadStat[];
}

export interface MemberWorkloadStat {
  memberId: string;
  memberName: string;
  totalHours: number;
  workDays: number;
  avgDailyHours: number;
  percentage: number;
}

export interface WorkloadStatsQueryParams {
  startDate?: string;
  endDate?: string;
  projectIds?: string[];
  memberIds?: string[];
  workloadTypeIds?: string[];
}

export interface WorkloadChartData {
  name: string;
  value: number;
  hours: number;
  percentage: number;
}

export interface TimeSeriesData {
  date: string;
  hours: number;
  projects: { [projectName: string]: number };
}

export interface ProjectComparisonData {
  projectName: string;
  totalHours: number;
  memberCount: number;
  avgDailyHours: number;
  efficiency: number;
}

export interface WorkloadDistribution {
  workloadType: string;
  hours: number;
  percentage: number;
  projects: string[];
}

export interface ExportStatsOptions {
  format: 'excel' | 'csv' | 'pdf';
  includeCharts: boolean;
  includeDetails: boolean;
  dateRange: {
    startDate: string;
    endDate: string;
  };
  projects: string[];
}